function out = loadData_2020(startYear,endYear)

% labels:
maturities = [1 4 12 20 28 40];
tmp = xlsread('dataUS_quarterly_v2_coreInfl_2020.xlsx','dataMatlab','A2:V700');
data = tmp(:,2:end); %omitting the time index
timeIndex  = x2mdate(tmp(:,1)); %datestr(x2mdate(tmp(:,1)));
dataLabels = {'$\hat{ l_{t}}$','$\hat{ w_{t}}$','$\Delta c_{t}$','$\pi_t$',...
    '$r_t$','$r^{(4)}_t$','$r^{(12)}_t$',...
    '$r^{(20)}_t$','$r^{(28)}_t$','$r^{(40)}_t$',...
    '$E_{t}\left[ r_{t+1}\right] $','$E_{t}\left[ r_{t+2}\right] $',...
    '$E_{t}\left[ r_{t+3}\right] $','$E_{t}\left[ r_{t+4}\right] $',...
    'NBER' 'realR12'	'realR20'	'realR28' 'realR40'};


% New labor series - All Employees: Total Nonfarm Payrolls, Thousands of Persons, Quarterly, Seasonally Adjusted
% dates nonpay
tmpLabor = xlsread('PAYEMS_2020.xlsx');
timeIndexLabor = x2mdate(tmpLabor(:,1));
%datestr(timeIndexLabor)
laborDevTrend = [timeIndexLabor runHamiltonFilter(log(tmpLabor(:,2)))];
% We start in july 1961: datestr(laborDevTrend(91,1))
data(:,1) = laborDevTrend(91:end,2);

% Data on real wages - Nonfarm Business Sector: Real Hourly Compensation 
% for All Employed Persons, Index 2012=100, Quarterly, Seasonally Adjusted
tmpWage = xlsread('COMPRNFB.xlsx');
timeIndexWage = x2mdate(tmpWage(:,1));
%datestr(timeIndexWage)
wageDevTrend = [timeIndexWage runHamiltonFilter(log(tmpWage(:,2)))];
% We start in july 1961: datestr(wageDevTrend(59,1))
data(:,2) = wageDevTrend(59:end,2);


% Load additional yields for the CS regressions
tmp            = load('GSW_yieldsMd_Mat3Md_2021.mat');
idx            = 2:3:size(tmp.yieldsMd_Mat3Md,1)-4;
yieldsAll      = tmp.yieldsMd_Mat3Md(idx,3:42)/100;
maturitiesMdAll  = tmp.yieldsMd_Mat3Md(1,3:42);
%datestr(tmp.yieldsMd_Mat3Md(idx,1))
% Check 10-year: yieldsAll(:,40)-data(:,9)
% Overwriting the 3-month yield in GSW by the yield in the secondary market
yieldsAll(:,1) = data(:,5);

% Loading 10-year Term premium estimate from the ACM model
acm = load('ACM_tp.mat');

% Setting the start and end dates for the data.
startObs = min(find(year(timeIndex)==startYear));
endObs   = max(find(year(timeIndex)==endYear));

acm.tp5y = acm.tp5y(startObs:endObs)*100;
acm.tp10y = acm.tp10y(startObs:endObs)*100;
acm.dates = acm.dates(startObs:endObs);


%% The output
out.numMacro       = 4;
out.numYields      = length(maturities);
out.matConShortRate= [1 2 3 4];
out.maturities     = maturities;
out.data           = data(startObs:endObs,1:14);
out.NBERrec        = ceil(data(startObs:endObs,15)); %ceil ensures that NBER is either 0 or 1
out.realYields     = data(startObs:endObs,16:19);
out.maturitiesReal = [12 20 28 40];
out.timeIndex      = timeIndex(startObs:endObs);
out.dataLabels     = dataLabels;
out.yieldsAll      = yieldsAll(startObs:endObs,:);
out.maturitiesMdAll= maturitiesMdAll;
out.acm_tp         = acm;

end